6. If the smart contract author has programmed the SELFDESTRU CT
capability, only then its functionality shall be available.
7 . In case the contract’s code does not have a SELFDESTRU CT opcode
or is inaccessible, it cannot be deleted.
8. Irrespective of the number of contracts you call or what they do when
called, transactions are atomic and execute in their entirety, recording
any changes in the global state if all execution terminates successfully.
9 . The program executed without an error and reached its execution end
is the meaning of successful termination.
10. Due to an error occurring, if execution fails, all of its effects are
“rolled back” as if the transaction never ran.
11. Having been attempted, a failed transaction is still recorded, and the
Ether spent on GAS for its execution is deducted from the originating
account and otherwise has no other effects on the contract or account
state.
Smart contract advantages
The advantages of a smart contract include:
1. No changes to data can be made by a third party, i.e., it is immutable.
2. A network is formed around the apps, i.e., it is corruption-free and
tamper-proof.
3 . It is secured using cryptography and has no central point of failure; the
applications are well protected against hacking attacks and fraudulent
activities, i.e., it is secure.
4. Apps can never be switched off, and they never go down, i.e., Z ero
downtime.
To sum up, automatically executable programs are smart contracts; it is
software script describing the relationship of their users. As a matter of fact,
it is similar to legal contracts, only with some differences. The smart
contract algorithm is stored by the blockchain, and the action starts under
certain “if-then” conditions. All actions are controlled by a pre-written
program, and the absence of intermediaries is the main advantage of smart
contracts.